 

class GrupoFilho {
        static belongsTo = GrupoPai
        static hasMany = [grupoDocumentos: GrupoDocumentos]
        Date dataDeCadastro = new Date()
        String nomeGrupoFilho
        Integer ordem
        GrupoPai grupoPai
        Boolean obrigatorio

static constraints = {
        nomeGrupo(blank:true, nullable:true, unique: true)
        ordem(blank:false, nullable:false, unique: true )
        nomeGrupoFilho(blank:false, nullable:false , maxSize:500)
        obrigatorio (blank:true, nullable:true )
       }

          public String toString(){
        return "${this.nomeGrupoFilho}"
    }

       static mapping = {
        table "TB_GRUPO_FILHO"
        grupoDocumentos cascade:'all-delete-orphan'
        id generator: 'sequence' ,params:[sequence:'tb_grupo_filho_id_seq'] 
        version false
        id column : 'GRUPO_FILHO_ID'
        dataDeCadastro column : "DT_DATA_CADASTRO"
        nomeGrupoFilho column : "DS_GRUPO" , sqlType: "VARCHAR", length: 500
        ordem column : "NU_ORDEM"
        grupoPai column : 'GRUPO_PAI_ID'
        obrigatorio column : "OP_OBRIGATORIO"
        }


}